草庐IT

c++ - DrawText VS TextOut Win32

全部标签

C# WMI 读出 : Win32_PerfRawData_Tcpip_NetworkInterface returns nothing

我尝试用C#读出WMI数据。我使用System.Management命名空间。对于大多数WMI查询,它工作得很好。但是,当我尝试从Win32_PerfFormattedData_Tcpip_NetworkInterface读取“BytesTotalPerSec”时,它不起作用。我的代码如下所示:varselect=$"SELECTBytesTotalPerSecFROMWin32_PerfFormattedData_Tcpip_NetworkInterfaceWHEREName='MyAdapter'";varscope=newManagementScope($"\\\\{comput

c - 将入口点更改为PE文件中新添加的shellcode段后,如何恢复主进程?

我试图通过在PE文件末尾添加一个额外的节头并在其中编写shellcode来进行PE感染。我已经添加了额外的部分并在其中编写了shellcode,并将原始入口点(OEP)更改为新添加的部分并且它执行得很好;我的意思是我的shellcode运行良好,但现在我想恢复主进程,为此我需要再次将修改后的入口点更改为OEP。但是,我无法弄清楚。请告诉我是否有任何方法可以在执行shellcode后恢复主进程。而且,我也试过这个blog,但它也不起作用,因为作者编写了内联汇编代码并放置了一些占位符以在运行时恢复OEP,这将动态嵌入到shellcode中。我正在考虑编写一个包含JMPto_OEP的shel

c - Win32 : Returning a minimized and hidden window to top

在wndproc中将窗口“最小化”到托盘后,我无法恢复窗口:caseWM_SIZE:if(wparam==SIZE_MINIMIZED){ShowWindow(hwnd,SW_HIDE);}break;托盘消息处理程序如下所示:caseTRAY_ICON_MESSAGE:switch(lparam){caseWM_LBUTTONDOWN:ShowWindow(hwnd,SW_RESTORE);BringWindowToTop(hwnd);SetFocus(hwnd);break;//...该窗口确实会重新出现,但始终隐藏在其他窗口下方并且不会出现在顶部。SetFocus()和Bring

c - 监控低级 Hook [C]

有没有什么方法可以监控Windows环境中的低级键盘Hook。假设我正在制作一个试图找到键盘记录器的程序。 最佳答案 >没有官方API可以查询已安装的键盘钩子(Hook)。是的,有。(你还太小,不知道这个……)您必须阅读PEB。参见Win32apiGroup所有Windows源代码(每个api,未记录或未记录)都已被反汇编 关于c-监控低级Hook[C],我们在StackOverflow上找到一个类似的问题: https://stackoverflow.com

c - 如何在 Windows 中使用 ruby​​ 扩展库(c 语言)运行我的 ruby​​ 应用程序?

如果您对此有任何帮助,我将不胜感激:我想为我的c库编写一个扩展。我创建了使用库libzmq(用C++编写)的文件zmq.cpp。我使用ruby​​extconf.rb创建了makefile,然后运行​​nmake。一切顺利。Nmake生成的文件librbzmq-i386-mswin32.deflibrbzmq-i386-mswin32.liblibrbzmq-i386-mswin32.explibrbzmq.solibrbzmq.so.manifest这一切都是在WindowsXP中完成的。然后我有一个测试程序,在我的第一行有:require'librbzmq'当我尝试使用运行我的测试

windows - 从 Win32 应用程序和 IBM RDZ/Eclipse 对大型机文件的一致访问?

我有一套用于处理IBMCOBOL源代码的工具;这些工具构建为Win32应用程序,并使用传统的Windows文件系统调用(打开、关闭、读取、写入)与Windows(包括网络)文件通信,并且工作正常,谢谢。我想将它们与Eclipse集成;我们了解如何让Eclipse为我们做我们认为的UI。问题在于Eclipse/RDZ用户通过一些IBM魔法访问大型机文件。在HowdoesRDZaccessmainframefiles我试图了解Eclipse如何访问大型机上的文件。显然,Eclipse/RDZ有一个普通人无法访问的secret文件系统访问后门。问题是我们的工具如何读取一些Windows可访问

windows - 尝试在 32 位 Windows 上运行 64 位测试

我们将单元测试作为构建中的构建后步骤运行。现在我在自动构建svn中自动提取和构建每个修订版的自动构建机器上遇到了这个问题。自动构建脚本会下载一个修订版,进行一些设置,然后在其上调用devenv.exe/build。反过来,这将构建所有内容,然后尝试运行测试。构建卡住,永远无法完成。如果您手动构建解决方案,在运行测试点会出现一个弹出对话框,提示测试可执行文件不是有效的Win32应用程序。我假设autobuilds也以某种方式获得了这个框,但隐藏在某处的非交互式session中。到目前为止,我有两个解决方案的想法:checkin尝试运行测试并检测故障的测试运行器应用程序。这是不可取的,因为

windows - 从 64 位应用程序使用 32 位进程内 COM 服务器的简单方法有哪些?

我有一个32位nativeC++ATL进程内COM服务器,它依赖于大量遗留的32位库。我需要在64位应用程序中使用它,并尽可能进行最小的更改。一种选择是将其放入COM+应用程序中。还有哪些简单的选择? 最佳答案 创建一个加载inproc服务器dll的32位助手应用程序,但它充当本地服务器。编译64位代理stub代码。然后,当64位应用程序尝试加载您的ActiveX时,它不会使用32位inproc(它无法加载),而是加载32位本地服务器-一个单独的进程-这是合法的。代理stub是从您的IDL自动生成的代码,应该可以很好地构建64位。

windows - WMI Win32_PerfRawData_PerfOS_PagingFile PercentUsage 图中的可疑值

我已经编写了一个小的VBScript程序来查询WindowsXP(最终也是2003/2008Server)下的页面文件使用情况,但我得到的数字似乎很奇怪。这是程序:Setwmi=GetObject("winmgmts:{impersonationLevel=impersonate}!\\.\root\cimv2")fori=1to10Setqry1=wmi.ExecQuery("Select*fromWin32_PageFileSetting")Setqry2=wmi.ExecQuery("Select*fromWin32_PerfRawData_PerfOS_PagingFile")

c++ - Win32 : BitTest, BitTestAndComplement, ... <- 如何禁用这个垃圾?

在VS2008SP1安装中,WinNT.h中有以下几行:#defineBitTest_bittest#defineBitTestAndComplement_bittestandcomplement#defineBitTestAndSet_bittestandset#defineBitTestAndReset_bittestandreset#defineInterlockedBitTestAndSet_interlockedbittestandset#defineInterlockedBitTestAndReset_interlockedbittestandreset我有很多基于BitT